package crontab

import (
	"errors"
	"sync"
)

var crontab *Crontab
var once sync.Once

// InitCrontab .
func InitCrontab() {
	once.Do(func() {
		crontab = New()
	})
	crontab.Start()
}

// ReleaseCrontab .
func ReleaseCrontab() {
	GetCrontab().Stop()
}

// GetCrontab .
func GetCrontab() *Crontab {
	if crontab == nil {
		panic(errors.New("InitCrontab missing"))
	}
	return crontab
}
